package com.sinosoft.product;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import org.compass.annotations.Searchable;
import org.compass.annotations.SearchableId;
import org.compass.annotations.SearchableProperty;
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

@SuppressWarnings("serial")
@Entity
@Table(name="ZYWX_IMAGE_HIGH_SDOM")
@Cache(usage= CacheConcurrencyStrategy.READ_ONLY)
@Searchable
public class ZywxImageHighSdom implements Serializable {

	private BigDecimal productid;
	private String productowner;
	private String productproducer;
	private String productname;
	private Date productdate;
	private String mapnumber;
	private BigDecimal mapscale;
	private BigDecimal southwestlongitude;
	private BigDecimal southwestlatitude;
	private BigDecimal northeastlongitude;
	private BigDecimal northeastlatitude;
	private BigDecimal southwestcornerx;
	private BigDecimal southwestcornery;
	private BigDecimal northwestcornerx;
	private BigDecimal northwestcornery;
	private BigDecimal northeastcornerx;
	private BigDecimal northeastcornery;
	private BigDecimal southeastcornerx;
	private BigDecimal southeastcornery;
	private BigDecimal lowerleftcornerx;
	private BigDecimal lowerleftcornery;
	private BigDecimal demgsd;
	private BigDecimal domgsd;
	private String imagecolor;
	private BigDecimal imagecolumns;
	private BigDecimal imagerows;
	private BigDecimal samplebits;
	private BigDecimal semimajoraxis;
	private BigDecimal ellipsoidflattening;
	private String geodeticdatum;
	private String mapproject;
	private BigDecimal centralmeridian;
	private String zonetype;
	private BigDecimal zoneno;
	private String coordinateunit;
	private String elevationsystem;
	private String elevationdatum;
	private String satelliteid;
	private String receivestationid;
	private String sensorid;
	private Date receivetime;
	private BigDecimal geometricrmse;
	private String dataintegrity;
	private String dataquality;
	private String dataarchivefile;
	private String browsefilelocation;
	private String thumbfilelocation;
	private String refdomversion;
	private String producttype;
	private String mapsheetname;
	private String isrelease;
	private String metadataid;
	private String isspatial;
	private Date recorddate;
	
	@Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name = "PRODUCTID")
	@SearchableId
	public BigDecimal getProductid() {
		return productid;
	}
	
	public void setProductid(BigDecimal productid){
		this.productid = productid;
	}
	
	@Column(name = "productowner")
	@SearchableProperty
	public String getProductowner() {
		return productowner;
	}
	
	@Column(name = "productproducer")
	@SearchableProperty
	public String getProductproducer() {
		return productproducer;
	}
	
	@Column(name = "productname")
	@SearchableProperty
	public String getProductname() {
		return productname;
	}
	
	@Column(name = "productdate")
	@SearchableProperty
	public Date getProductdate() {
		return productdate;
	}
	
	@Column(name = "mapnumber")
	@SearchableProperty
	public String getMapnumber() {
		return mapnumber;
	}
	
	@Column(name = "mapscale")
	@SearchableProperty
	public BigDecimal getMapscale() {
		return mapscale;
	}
	
	@Column(name = "southwestlongitude")
	@SearchableProperty
	public BigDecimal getSouthwestlongitude() {
		return southwestlongitude;
	}
	
	@Column(name = "southwestlatitude")
	@SearchableProperty
	public BigDecimal getSouthwestlatitude() {
		return southwestlatitude;
	}
	
	@Column(name = "northeastlongitude")
	@SearchableProperty
	public BigDecimal getNortheastlongitude() {
		return northeastlongitude;
	}
	
	@Column(name = "northeastlatitude")
	@SearchableProperty
	public BigDecimal getNortheastlatitude() {
		return northeastlatitude;
	}
	
	@Column(name = "southwestcornerx")
	@SearchableProperty
	public BigDecimal getSouthwestcornerx() {
		return southwestcornerx;
	}
	
	@Column(name = "southwestcornery")
	@SearchableProperty
	public BigDecimal getSouthwestcornery() {
		return southwestcornery;
	}
	
	@Column(name = "northwestcornerx")
	@SearchableProperty
	public BigDecimal getNorthwestcornerx() {
		return northwestcornerx;
	}
	
	@Column(name = "northwestcornery")
	@SearchableProperty
	public BigDecimal getNorthwestcornery() {
		return northwestcornery;
	}
	
	@Column(name = "northeastcornerx")
	@SearchableProperty
	public BigDecimal getNortheastcornerx() {
		return northeastcornerx;
	}
	
	@Column(name = "northeastcornery")
	@SearchableProperty
	public BigDecimal getNortheastcornery() {
		return northeastcornery;
	}
	
	@Column(name = "southeastcornerx")
	@SearchableProperty
	public BigDecimal getSoutheastcornerx() {
		return southeastcornerx;
	}
	
	@Column(name = "southeastcornery")
	@SearchableProperty
	public BigDecimal getSoutheastcornery() {
		return southeastcornery;
	}
	
	@Column(name = "lowerleftcornerx")
	@SearchableProperty
	public BigDecimal getLowerleftcornerx() {
		return lowerleftcornerx;
	}
	
	@Column(name = "lowerleftcornery")
	@SearchableProperty
	public BigDecimal getLowerleftcornery() {
		return lowerleftcornery;
	}
	
	@Column(name = "demgsd")
	@SearchableProperty
	public BigDecimal getDemgsd() {
		return demgsd;
	}
	
	@Column(name = "domgsd")
	@SearchableProperty
	public BigDecimal getDomgsd() {
		return domgsd;
	}
	
	@Column(name = "imagecolor")
	@SearchableProperty
	public String getImagecolor() {
		return imagecolor;
	}
	
	@Column(name = "imagecolumns")
	@SearchableProperty
	public BigDecimal getImagecolumns() {
		return imagecolumns;
	}
	
	@Column(name = "imagerows")
	@SearchableProperty
	public BigDecimal getImagerows() {
		return imagerows;
	}
	
	@Column(name = "samplebits")
	@SearchableProperty
	public BigDecimal getSamplebits() {
		return samplebits;
	}
	
	@Column(name = "semimajoraxis")
	@SearchableProperty
	public BigDecimal getSemimajoraxis() {
		return semimajoraxis;
	}
	
	@Column(name = "ellipsoidflattening")
	@SearchableProperty
	public BigDecimal getEllipsoidflattening() {
		return ellipsoidflattening;
	}
	
	@Column(name = "geodeticdatum")
	@SearchableProperty
	public String getGeodeticdatum() {
		return geodeticdatum;
	}
	
	@Column(name = "mapproject")
	@SearchableProperty
	public String getMapproject() {
		return mapproject;
	}
	
	@Column(name = "centralmeridian")
	@SearchableProperty
	public BigDecimal getCentralmeridian() {
		return centralmeridian;
	}
	
	@Column(name = "zonetype")
	@SearchableProperty
	public String getZonetype() {
		return zonetype;
	}
	
	@Column(name = "zoneno")
	@SearchableProperty
	public BigDecimal getZoneno() {
		return zoneno;
	}
	
	@Column(name = "coordinateunit")
	@SearchableProperty
	public String getCoordinateunit() {
		return coordinateunit;
	}
	
	@Column(name = "elevationsystem")
	@SearchableProperty
	public String getElevationsystem() {
		return elevationsystem;
	}
	
	@Column(name = "elevationdatum")
	@SearchableProperty
	public String getElevationdatum() {
		return elevationdatum;
	}
	
	@Column(name = "satelliteid")
	@SearchableProperty
	public String getSatelliteid() {
		return satelliteid;
	}
	
	@Column(name = "receivestationid")
	@SearchableProperty
	public String getReceivestationid() {
		return receivestationid;
	}
	
	@Column(name = "sensorid")
	@SearchableProperty
	public String getSensorid() {
		return sensorid;
	}
	
	@Column(name = "receivetime")
	@SearchableProperty
	public Date getReceivetime() {
		return receivetime;
	}
	
	@Column(name = "geometricrmse")
	@SearchableProperty
	public BigDecimal getGeometricrmse() {
		return geometricrmse;
	}
	
	@Column(name = "dataintegrity")
	@SearchableProperty
	public String getDataintegrity() {
		return dataintegrity;
	}
	
	@Column(name = "dataquality")
	@SearchableProperty
	public String getDataquality() {
		return dataquality;
	}
	
	@Column(name = "dataarchivefile")
	@SearchableProperty
	public String getDataarchivefile() {
		return dataarchivefile;
	}
	
	@Column(name = "browsefilelocation")
	@SearchableProperty
	public String getBrowsefilelocation() {
		return browsefilelocation;
	}
	
	public void setProductowner(String productowner) {
		this.productowner = productowner;
	}

	public void setProductproducer(String productproducer) {
		this.productproducer = productproducer;
	}

	public void setProductname(String productname) {
		this.productname = productname;
	}

	public void setProductdate(Date productdate) {
		this.productdate = productdate;
	}

	public void setMapnumber(String mapnumber) {
		this.mapnumber = mapnumber;
	}

	public void setMapscale(BigDecimal mapscale) {
		this.mapscale = mapscale;
	}

	public void setSouthwestlongitude(BigDecimal southwestlongitude) {
		this.southwestlongitude = southwestlongitude;
	}

	public void setSouthwestlatitude(BigDecimal southwestlatitude) {
		this.southwestlatitude = southwestlatitude;
	}

	public void setNortheastlongitude(BigDecimal northeastlongitude) {
		this.northeastlongitude = northeastlongitude;
	}

	public void setNortheastlatitude(BigDecimal northeastlatitude) {
		this.northeastlatitude = northeastlatitude;
	}

	public void setSouthwestcornerx(BigDecimal southwestcornerx) {
		this.southwestcornerx = southwestcornerx;
	}

	public void setSouthwestcornery(BigDecimal southwestcornery) {
		this.southwestcornery = southwestcornery;
	}

	public void setNorthwestcornerx(BigDecimal northwestcornerx) {
		this.northwestcornerx = northwestcornerx;
	}

	public void setNorthwestcornery(BigDecimal northwestcornery) {
		this.northwestcornery = northwestcornery;
	}

	public void setNortheastcornerx(BigDecimal northeastcornerx) {
		this.northeastcornerx = northeastcornerx;
	}

	public void setNortheastcornery(BigDecimal northeastcornery) {
		this.northeastcornery = northeastcornery;
	}

	public void setSoutheastcornerx(BigDecimal southeastcornerx) {
		this.southeastcornerx = southeastcornerx;
	}

	public void setSoutheastcornery(BigDecimal southeastcornery) {
		this.southeastcornery = southeastcornery;
	}

	public void setLowerleftcornerx(BigDecimal lowerleftcornerx) {
		this.lowerleftcornerx = lowerleftcornerx;
	}

	public void setLowerleftcornery(BigDecimal lowerleftcornery) {
		this.lowerleftcornery = lowerleftcornery;
	}

	public void setDemgsd(BigDecimal demgsd) {
		this.demgsd = demgsd;
	}

	public void setDomgsd(BigDecimal domgsd) {
		this.domgsd = domgsd;
	}

	public void setImagecolor(String imagecolor) {
		this.imagecolor = imagecolor;
	}

	public void setImagecolumns(BigDecimal imagecolumns) {
		this.imagecolumns = imagecolumns;
	}

	public void setImagerows(BigDecimal imagerows) {
		this.imagerows = imagerows;
	}

	public void setSamplebits(BigDecimal samplebits) {
		this.samplebits = samplebits;
	}

	public void setSemimajoraxis(BigDecimal semimajoraxis) {
		this.semimajoraxis = semimajoraxis;
	}

	public void setEllipsoidflattening(BigDecimal ellipsoidflattening) {
		this.ellipsoidflattening = ellipsoidflattening;
	}

	public void setGeodeticdatum(String geodeticdatum) {
		this.geodeticdatum = geodeticdatum;
	}

	public void setMapproject(String mapproject) {
		this.mapproject = mapproject;
	}

	public void setCentralmeridian(BigDecimal centralmeridian) {
		this.centralmeridian = centralmeridian;
	}

	public void setZonetype(String zonetype) {
		this.zonetype = zonetype;
	}

	public void setZoneno(BigDecimal zoneno) {
		this.zoneno = zoneno;
	}

	public void setCoordinateunit(String coordinateunit) {
		this.coordinateunit = coordinateunit;
	}

	public void setElevationsystem(String elevationsystem) {
		this.elevationsystem = elevationsystem;
	}

	public void setElevationdatum(String elevationdatum) {
		this.elevationdatum = elevationdatum;
	}

	public void setSatelliteid(String satelliteid) {
		this.satelliteid = satelliteid;
	}

	public void setReceivestationid(String receivestationid) {
		this.receivestationid = receivestationid;
	}

	public void setSensorid(String sensorid) {
		this.sensorid = sensorid;
	}

	public void setReceivetime(Date receivetime) {
		this.receivetime = receivetime;
	}

	public void setGeometricrmse(BigDecimal geometricrmse) {
		this.geometricrmse = geometricrmse;
	}

	public void setDataintegrity(String dataintegrity) {
		this.dataintegrity = dataintegrity;
	}

	public void setDataquality(String dataquality) {
		this.dataquality = dataquality;
	}

	public void setDataarchivefile(String dataarchivefile) {
		this.dataarchivefile = dataarchivefile;
	}

	public void setBrowsefilelocation(String browsefilelocation) {
		this.browsefilelocation = browsefilelocation;
	}

	public void setThumbfilelocation(String thumbfilelocation) {
		this.thumbfilelocation = thumbfilelocation;
	}

	public void setRefdomversion(String refdomversion) {
		this.refdomversion = refdomversion;
	}

	public void setProducttype(String producttype) {
		this.producttype = producttype;
	}

	public void setMapsheetname(String mapsheetname) {
		this.mapsheetname = mapsheetname;
	}

	public void setIsrelease(String isrelease) {
		this.isrelease = isrelease;
	}

	public void setMetadataid(String metadataid) {
		this.metadataid = metadataid;
	}

	public void setIsspatial(String isspatial) {
		this.isspatial = isspatial;
	}

	public void setRecorddate(Date recorddate) {
		this.recorddate = recorddate;
	}

	@Column(name = "thumbfilelocation")
	@SearchableProperty
	public String getThumbfilelocation() {
		return thumbfilelocation;
	}
	
	@Column(name = "refdomversion")
	@SearchableProperty
	public String getRefdomversion() {
		return refdomversion;
	}
	
	@Column(name = "producttype")
	@SearchableProperty
	public String getProducttype() {
		return producttype;
	}
	
	@Column(name = "mapsheetname")
	@SearchableProperty
	public String getMapsheetname() {
		return mapsheetname;
	}
	
	@Column(name = "isrelease")
	@SearchableProperty
	public String getIsrelease() {
		return isrelease;
	}
	
	@Column(name = "metadataid")
	@SearchableProperty
	public String getMetadataid() {
		return metadataid;
	}
	
	@Column(name = "isspatial")
	@SearchableProperty
	public String getIsspatial() {
		return isspatial;
	}
	
	@Column(name = "recorddate")
	@SearchableProperty
	public Date getRecorddate() {
		return recorddate;
	}
	
}